/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package modelo.tabla;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.table.AbstractTableModel;
import modelo.Proveedores;
import persistencia.BaseDatosProveedor;

/**
 *
 * @author DAM2B
 */
public class TablaProveedores extends AbstractTableModel {

    private ArrayList<String> campos = new ArrayList<String>();
    private ArrayList<Proveedores> alProveedores = new ArrayList<Proveedores>();
    private BaseDatosProveedor dbm = new BaseDatosProveedor();

  
    public TablaProveedores(ArrayList<Proveedores> alProveedores) throws ClassNotFoundException, SQLException {
        super();
        this.alProveedores = alProveedores;
        campos.add("codigo_Proveedor");
        campos.add("nombre_Proveedor");
        campos.add("cif");
        campos.add("direccion");
        campos.add("cPostal");
        campos.add("poblacion");
        campos.add("pais");

        dbm = new BaseDatosProveedor();
    }

    @Override
    public int getColumnCount() {
        return campos.size();
    }

    @Override
    public String getColumnName(int arg0) {
        return campos.get(arg0);
    }

    @Override
    public int getRowCount() {
        alProveedores = new ArrayList<Proveedores>();
        try {
            alProveedores = dbm.getProveedores();
        } catch (SQLException ex) {
            Logger.getLogger(TablaProveedores.class.getName()).log(Level.SEVERE, null, ex);
        }
        return alProveedores.size();
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
        String columna = "";
        Proveedores p = (Proveedores) alProveedores.get(rowIndex);
        switch (columnIndex) {
            case 0:
                columna = String.valueOf(p.getCodigo_Proveedor());
                break;
            case 1:
                columna = p.getNombre_Proveedor();
                break;
            case 2:
                columna = p.getCif();
                break;
            case 3:
                columna = p.getDireccion();
                break;
            case 4:
                columna = String.valueOf(p.getcPostal());
                break;
            case 5:
                columna = p.getPoblacion();
                break;
            case 6:
                columna = p.getPais();
                break;

        }
        return columna;
    }

}
